Numpy是一個用於處理複雜的計算及製作陣列的python涵式庫。例如計算圓周、數學中的sin cos tan等方法都在numpy的涵式庫裏,而最重要的內容,也是今天會分享的就是numpy陣列(array),便開始分享吧:
如果你有看我前天分享matplotlib的教學,你便應該已安裝numpy涵式庫,如果沒有那麼就照住下面的字串輸入到終端機裏。
pip install numpy
例子:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr)
print(type(arr))
執行結果:
[1 2 3 4 5]
<class 'numpy.ndarray'>
例子2:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr[0])
print(arr[3])
執行結果:
1
4
或是用下面的例子:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr[2:])
print(arr[1:5])
print(arr[:4])
執行結果:
[3 4 5]
[2 3 4 5]
[1 2 3 4]
NumPy 的zeros函數是用來建立指定形狀的全零的工具。它接受一個表示形狀的元組作為參數,並傳回一個由零填充的陣列。這些數組中的所有元素都將初始化為零。
假設我們要建立一個形狀為(5)的一維數組,其中所有元素都為零,我們可以使用以下程式碼:
import numpy as np
arr=np.zeros(5)
print(arr)
print(arr[0])
執行結果:
[0. 0. 0. 0. 0.]
0.0
假設我們要建立一個形狀為(3,7)的一維數組,其中所有元素都為零,我們可以使用以下程式碼:
import numpy as np
arr = np.zeros((3, 7))
print(arr)
print("______")
print(arr[0])
print("_______")
print(arr[0][0])
執行結果:
[[0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0.]]
______
[0. 0. 0. 0. 0. 0. 0.]
_______
0.0
import numpy as np
arr=np.linspace(start=0, stop=20,num=10)
print(arr)
執行結果:
[ 0. 2.22222222 4.44444444 6.66666667 8.88888889 11.11111111
13.33333333 15.55555556 17.77777778 20. ]
在這個例子中,我們產生了一個從1 到20(包含1 和20)的序列,總共包含10個等間距的元素。
import numpy as np
arr=np.zeros((20,3))
# print(arr)
print(np.shape(arr))
執行結果:
(20, 3) #20行3列
在NumPy 函式庫,形狀(shape)指的是NumPy 陣列的維度或大小。它是一個由整數構成的元組,用來描述數組每個維度的大小。
舉個例子,如果有一個二維數組,包含4行5列,那麼它的形狀就是(4, 5)。如果有一個一維數組,包含10 個元素,那麼它的形狀就是(1,10)。
簡介:
np.reshape新的行和列相乘必須等於原先行和列的相乘的果,不然會出error。可參考下面的例子:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
print(arr)
newarr = arr.reshape(4, 3)
print(newarr)
# newarr2=newarr.reshape(12,1)
# print(newarr2)
執行結果:
[ 1 2 3 4 5 6 7 8 9 10 11 12]
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
今天先介紹,這些如果我的文章對你有幫助或有更好的建議,可以追蹤我,可以按讚和不妨在留言區提出,明天再見吧。
reference:
https://www.w3schools.com/python/numpy/numpy_array_reshape.asp